home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
System Booster
/
System Booster.iso
/
Commodities
/
Recall
/
Docs
/
Recall.ascii
next >
Wrap
Text File
|
1996-09-26
|
89KB
|
2,548 lines
Documentation for Recall
This document describes the usage of Recall and how to make your own
customized project of events.
Description
Disclaimer
Copyrights
Distributability
Credits and requirements
Installing
Running the programs
Using the Preferences
Developers
History
Known bugs
Future developments and plans
Troubleshooting, Tips & Tricks
How to report bugs
How to register
How to contact the author
Description
Do have a tendency to forget birthdays, anniversaries and other important
events?
Well, there are plenty of products on the market that will prevent that
from happening.
But, do you also want to
o be reminded with requesters, alerts or practically anything that can be
displayed on an Amiga-monitor?
o automatically start programs (CLI/WB/AREXX/BATCH) depending on the date,
time or weekday?
o create input events at certain days/time/weekday?
o keep track of the remaining days/time to important events?
o keep track of the days/time since important events happened?
o be reminded every # day (e.g. every 14th day)?
o be reminded # days before or after the event
o be reminded once a day, every time you boot, before or after a certain
date, before or after a certain hour or minute?
o be reminded about events until you acknowledge them?
o be reminded on certain weekdays?
o display unlimited lines of text in the same requester or alert?
o group different events and make them appear simultaneously?
o keep a simple database of the birthdays of family and friends?
o let your Amiga keep track of how old people are by insterting the date
of birth in the middle of the string where you want to display the age?
(I.e. the text "Adam is {years:08/05/1970} years old today" may be
displayed as "Adam is 24 years old today".)
o make advanced events which are displayed for example after 21:00 every
3rd day the first 7 days of every 2nd month the next 4 years?
o combine all of the attributes mentioned above in the same event?
o enter these events in an easy-to-use, totally adaptable multi-window
environment and without the need of programming-knowledge, just by
entering the desired text and pressing a few buttons?
Well, then you will find this program extremely useful, because Recall
will do exactly that for you! It is an easy-to-use, intuition-based
utility for the absent-minded!
Disclaimer
THIS SOFTWARE AND/OR INFORMATION IS PROVIDED "AS-IS". THERE IS NO
WARRANTY FOR THE PROGRAMS, TO THE EXTENT PERMITTED BY APPLICABLE
LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS
AND/OR OTHER PARTIES PROVIDE THE PROGRAMS "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE
OF THE PROGRAMS IS WITH YOU. SHOULD THE PROGRAMS PROVE DEFECTIVE, YOU
ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY REDISTRIBUTE THE
PROGRAMS AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF
THE USE OR INABILITY TO USE THE PROGRAMS (INCLUDING BUT NOT LIMITED TO
LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAMS TO OPERATE WITH ANY
OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED
OF THE POSSIBILITY OF SUCH DAMAGES. ALL RISKS DUE TO THE PERFORMANCE OR
RESULT OF THE USE OF RECALL ARE ASSUMEND BY YOU. THE AUTHOR ASSUMES NO
RESPONSIBILITY OR LIABILITY WHATSOEVER.
Copyrights & distribution
All binaries and documentation are copyrighted (C) 1993,1994,1995 to Ketil
Hunn.
Due to the great amount of work this version required, Recall is now
released as SHAREWARE. You are allowed to use this copy for evaluation
for maximum ONE week. You are not allowed to use this software after that
period has expired, unless you pay the shareware fee of US $15 or 100
Norwegian kroner (do not send other currencies, since the exchange fee
would quickly exceed the shareware fee).
People who pay the shareware fee and are available through e-mail, will
automatically receive new releases of Recall through e-mail (optional).
Unregistered users will not be able to save projects larger than 10 events.
When you register, you will be sent a private coded Recall key that
removes this limitation.
See also Credits
How to register
Distributability
The archive may be spread through BBS, Internet, AmiNet and on Public
Domain disks as long as the archive is not modified in any way. This
means that you can copy it freely as long as you don't ask for a more than
nominal copying fee. This fee must not be more than US $5 or 5 DM. It
would be much appreciated if magazines notified me through e-mail or
ordinary mail if they include Recall on a cover-disk.
If you wish to include Recall on a magazine cover disk, you may do so as
long as you send a complimentary copy of the magazine issue in which it
appears to my home address. The entire package must be included on the
disk, not just the executable. Please contact me in advance to ensure you
have the latest version.
If you wish to supply Recall as part of a CD-ROM compilation of freeware,
you may do so as long as the disc contains at least 20 Mb of other
freeware. Otherwise, contact me first please. Explicit permission is
granted to distribute Recall on any CD-ROM produced by Fred Fish / Amiga
Library Services, and on any officially supported Aminet compilation CD-
ROM.
The following files should be in this archive:
Utilities (dir)
SetMouse SetMouse.doc
SetMouse.doc.info SetMouse.info
Docs (dir)
Recall.ascii Recall.ASCII.info
Recall.guide Recall.Guide.info
Install (dir)
Dansk.info Deutsch.info
English.info Espanol.info
Français.info Hellas.info
Install Italiano.info
Nederlands.info Norsk.info
Nynorsk.info Portugues.info
Suomi.info Svenska.info
Catalogs (dir)
Portugues (dir)
Recall (dir)
Prefs.catalog Recall.catalog
Norsk (dir)
Recall (dir)
Prefs.catalog Recall.catalog
Suomi (dir)
Recall (dir)
Prefs.catalog Recall.catalog
Languages (dir)
nynorsk.language ReadMe
ReadMe.info suomi.language
Svenska (dir)
Recall (dir)
Prefs.catalog Recall.catalog
Deutsch (dir)
Recall (dir)
Prefs.catalog Recall.catalog
Nederlands (dir)
Recall (dir)
Prefs.catalog Recall.catalog
Dansk (dir)
Recall (dir)
Prefs.catalog Recall.catalog
Nynorsk (dir)
Recall (dir)
Prefs.catalog Recall.catalog
Hellas (dir)
Recall (dir)
Prefs.catalog Recall.catalog
Français (dir)
Recall (dir)
Prefs.catalog Recall.catalog
Español (dir)
Recall (dir)
Prefs.catalog Recall.catalog
Languages.info Speaka no englis?
Speaka no englis?.info
Libs (dir)
easygadgets.library morereq.library
Loaders (dir)
ASCII ASCII.info
Recall V1.x Recall V1.x.info
Recall V2.x Recall V2.x.info
Savers (dir)
ASCII ASCII.info
Operators (dir)
Sort Sort.info
Displayers (dir)
Browser Browser.info
Icons (dir)
Module 1.info
Module 2.info Prefs 1.info
Prefs 2.info Recall 1.info
Recall 2.info Recall.info
Projects (dir)
Examples.project
Recall.project Welcome.project
Fonts (dir)
NewRecall (dir)
11 12
13 14
8 9
NewRecall.font
Scripts (dir)
ReadMe ReadMe.info
RECALL.SBQ Recall.sbq.info
SBasePro->ASCII SBasePro->ASCII.info
Environment (dir)
Recall.env
Catalogs.info
Displayers.info Docs.info
Fonts.info Icons.info
Install.info Loaders.info
Operators.info Prefs
Prefs.info Projects.info
Recall Recall.info
Savers.info Scripts.info
Utilities.info
See also Credits
About Recall and Credits
NAME: Recall
VERSION: V3.0
PROGRAMMER: Ketil Hunn
PLACE: Fredrikstad / Molde - Høgskolen i Molde, Norway
COPYRIGHT: All binaries and docs are © 1993,1994,1995 Ketil Hunn
Read copyright-notice
DISTRIBUTE: Shareware.
PRICE: US $15 or 100 Norwegian kroner.
MAIL: Ketil.Hunn@hiMolde.no
TOOLS: SAS/C V6.51
fd2pragma
RevCo 1.0
AGIndex V1.04
MemMinister V1.1
SnoopDos V3.0
REQUIREMENTS: Any Amiga with WB2.0+
MoreReq.library
EasyGadgets.library
ReqTools.library (optional)
Needs WB2.1+ in order to be localized
Amigaguide.library is required for on line-help
REQTOOLS: The usage of ReqTools.library is optional. The library is
not included in this archive. ReqTools is freely distribut-
able and you should be able to find it on any FTP site, BBS
or PD-disks.
TRANSLATIONS: Deutsch: Rudi Brand
Nederlands: Frank Breedijk
Suomi: Juha Kettunen
Svenska: Andreas Moestedt
Dansk: Anders Wegge Jakobsen
Hellas: Sophocles Richar Metsis
Français: Yves Perrenoud
Português: Manuel Lemos
Español: Angela Wilkinson with help from Diego Duque and
Mabel Torres.
Nynorsk: Ove-Rune Driveklepp and Ketil Hunn
Norsk: Ketil Hunn
BETATESTERS: Giorgio Demenego
Michael Zielinski
Frank Breedijk
Frank Duerring
Philip Graham Meyer
Nuutti Meriläinen
Juha Kettunen
Janne Simonen
Rudi Brand
CREDITS: This package was developed on an A3000 25MHz with 6Mb RAM,
ForeFront monitor, 105Mb harddrive, 3 drives and a Nec P20-
printer. All software were running under WB3.1 on 724x566,
8 colors screen.
The ReqTools.library is copyrighted to Nico François.
fd2pragma is copyrighted to Jochen Wiedmann.
RevCo is copyrighted to Litrik De Roy.
AGIndex is copyrighted to Camiel Rouweler.
MemMinister is copyrighted to Marcus Ohlström.
SnoopDos is copyrighted to Eddy Carrol.
The calendar is based on the DateSelectorGadClass which is
copyrighted to Markus Aalto.
MoreReq.library and EasyGadgets.library are copyrighted
Ketil Hunn.
The suomi.language is copyrighted to Tomi Blinnikka
(I tried to get in touch with you through e-mail, but I
never received a reply) Hope you don't mind that I've
included your .language file.
THANKS TO: All those who sent me suggestions and bugs, and of course
the translators and the betatesters. I would also like to
thank all those who sent me e-mails. The response has been
enormous. If this keeps up, I'll have to hire a secretary
:-)
Installing
I am not going to go through the whole installation process here, since
most of you are already familiar with Commodore's Installer. Just
doubleclick on the install-icon, and the program will install itself
automatically (just answer a few questions...). All files except the font
will be placed in a private drawer called 'Recall'. The font will be
copied to your 'FONTS:' directory.
Beginning with version 2.1, the installation-script is localized. Just
click on the preferred language and the installation and it's questions
will be given in that language.
The script needs Commodore's 'Amiga Application Installation Utility'
(Installer) in order to run. This is not included in this package because
it is copyrighted to Commodore. The Installer utility is shipped with
WB2.1 and higher.
IMPORTANT It is important that you do not move Recall or Recall
Preferences outside the Recall drawer, or else it cannot find
the necessary files. If you absolutely *MUST*, you should
create project icons pointing to the Recall drawer instead!
See also Tooltypes
Running the programs
Both programs may be run from Shell or from Workbench by doubleclicking on
their icons. Recall may be terminated using Ctrl-C.
Recall will install itself as a commodity and may be controlled through
the Exchange program. Tooltypes may be used to override the default
settings in both programs.
General tooltypes:
FROM=<filename> - Project filename to use. Defaults to
Recall/Projects/Recall.project.
LANGUAGE=<language> - Force Recall programs to use another language than
the default selected language. When not provided
the default locale will be used.
USEREQTOOLS=<switch> - Set to TRUE/YES or FALSE/NO, TRUE/YES telling
Recall to use reqtools.library REQUESTERS instead
of the standard requesters. When present in
Recall Preferences, ReqTools requesters will be
used when testing the project. This tooltype must
be present in order to centre requesters when
testing the project. Defaults to NO.
Recall Preferences tooltypes:
HELP=<filename> - Path and name of the AmigaGuide documentation. By
default, Recall will first look for the guide in
the drawer from where the Recall Preferences
program was started and then the HELP:english
drawer.
Recall tooltypes:
DONOTWAIT - Should be present if Recall is started from your
WBstartup drawer.
CX_PRIORITY=<value> - Sets the priority of the Recall commodity.
WAIT=<value> - The idle time in seconds between each time Recall
checks the project. Will only be affective if
STAYRESIDENT is positive. Defaults to 60 (every
minute).
STAYRESIDENT=<switch> - Set to TRUE/YES or FALSE/NO, TRUE/YES telling
Recall to stay resident in memory. If negative,
Recall will run through the project once and then
exit (If any programs were launched, it will wait
until the terminates). Defaults to NO.
BUFFERSIZE=<value> - Sets the size in bytes of the textbuffer Recall
will need. Defaults to 3000.
Running from Workbench
Doubleclick on the icon to run the program. Tooltypes may be entered by
clicking once on the icon and selecting the item 'Icons->Information' from
the Workbench. Please refer to your manual 'Using the System Software'
for further details.
Running from Shell
Enter the name of the program to start at the shell-prompt. Tooltypes may
be entered directly after the program name. E.g.:
Recall FROM=myproject.prefs STAYRESIDENT=YES WAIT=3600
See also How to handle the CPU workload
How to handle the CPU workload
Recall is designed to use as little CPU-time as possible. When loading
the project it converts the project to a format that may easily be parsed
(without recursion or calculation of dates etc.). A normal project will
take up 1-2 1n some tenths of a second every time the project is checked
for events. It will of course use more of the CPU-time when an events are
displayed...
When running other applications that requires much of the available CPU-
time, you may easily disable Recall by setting the task to Inactive
through Commodore's Exchange program.
Hints on how to decrease the CPU workload:
o Set the WAIT tooltype to more than the default 60 seconds. If checking
once in a hour is sufficient for you, then set the WAIT value to 3600.
o Start Recall without the STAYRESIDENT tooltype or set it to FALSE/NO.
Using Recall Preferences
The Recall Preferences program is used to create and maintain your own
project of events.
General about the GUI
Using on-line help
Modules
Main window
Text window
Date window
Attributes window
Menus:
Project menu
Edit menu
View menu
Search/Replace menu
GUI menu
Settings menu
Describing the graphic user interface
Much work has been done to make the graphic user interface intuitive and
easy to use. Here are some of its features:
o Multi-window environment. The windows work independently of each other
and are 'multitasking'.
o All windows are font-adaptable and sizeable.
o The program can either display its windows on the Workbench, on the
default public screen or open an own screen of any resolution, size and
depth.
o Most gadgets have keyboard equivalents for easy execution.
o The windows will remember it's attributes when closed and reopened.
o All environment attributes may be saved to disk.
o On-line help for all windows, gadgets and menu-items.
o Pop-up requesters
o Image buttons where appropriate.
o Recall comes with a nice font which looks good on both non-interlaced
and interlaced screens.
Listviews may be controlled using the arrow-keys:
Cursor up - Previous item
Cursor down - Next item
Shift Cursor up - Previous page
Shift Cursor down - Next page
Control Cursor up - Top item
Control Cursor down - Bottom item
Alt Cursor up - Top item
Alt cursor down - Bottom item
Return - Enter a folder/edit name
NOTE: A gadget-shortcut may be cancelled by pressing another key or the
alt-qualifier while holding the shortcut-key down.
See also GUI menu
Using on-line help
Recall has a built-in help function that can pop up help on any window,
gadget or menu-item directly from the program. This function is activated
when positioning the mouse-pointer over a window, gadget or menu-item and
then pressing the HELP-key on your keyboard.
AmigaGuide is opened asynchronously, meaning that it will be launched as
separate task, independently from Recall. This allows you to continue
your work while help is being displayed.
If you wish to select help on another subject while AmigaGuide is open,
just activate the desirable window, place the pointer at another object,
press HELP and AmigaGuide will show text on that subject without you
having to close its window and load everything again.
The latest versions of AmigaGuide allows you to save position, width and
height of the AmigaGuide-window. When the on-line help system is
activated later, AmigaGuide will open at the coordinates last saved. You
should only save the AmigaGuide settings if Recall is opened on its own
screen or else the settings will affect all the other programs as well.
The documentation was designed to be displayed in a 640 pixels wide
window, but it will wordwrap the text if the window is made smaller.
NOTE 1: In order for the on-line help system to work, 'amigaguide.library'
must be available on your system.
Modules
Recall allows its functionality to be extended through modules. This
means that functions can be added later or you could even write your own
modules and Recall will automatically detect and run them when they are
selected from the menu.
Recall handles 4 types of modules:
Import
Export
Operators
Displayers
See also Developer info
Describing the import modules
Import-modules are modules that allows easy converting from other formats
to the Recall project format. All import modules may be started by
selecting the sub-items in the menu 'Project->Import'. If no import-
modules were installed, Recall will not show this sub-menu.
Currently, Recall comes with the following import-modules:
ASCII
Imports an ASCII project into Recall Preferences. This loader module can
be very useful to convert birthday databases to a Recall project since
most databases can save their data in ASCII format. The ASCII-file may
need some changes before it can be imported by Recall. All ASCII texts in
the following format are accepted:
EVENT/A,DATE/A,TIME/A,TEXT/M/A
All items must be enclosed in quotation marks '"' and separated by a
comma. NOTE! NO comma at end of line! As stated, TEXT may occur as many
times as you wish. If these fields do not exist in you database, it
should quite easy to create them globally before exporting it as an ASCII-
file. Example:
"Remember","29.08.1993","11:00","To put your jeans on BEFORE your shoes!"
Recall V1.x
Imports a Recall V1.x project.
Recall V2.x
Imports a Recall V2.x project.
See also Export modules
Operator modules
Displayer modules
Developer info
Module settings
Describing the export modules
Export modules are modules that allows easy converting from the Recall
project format to another formats. All saver modules can be started from
the menu 'Project->Export'. If no export modules were installed, this menu
item will not be available.
Currently, Recall comes with the following export modules:
ASCII
Exports a Recall project to an ASCII-file. The ASCII-format is described
under import modules.
See also Import modules
Operator modules
Displayer modules
Developer info
Module settings
Describing the displayer module
Displayers are modules that will display the data in a Recall project in
any other way than provided through the Recall Preferences program. If no
displayer modules are installed, this menu will not be shown at all.
Currently, Recall comes with these displayer modules:
Browser
Lists all events in the same listview. Allows you to browse through events
easily. You may jump to an event by double-clicking in the browser
listview or pressing the 'Jump to'-button.
See also Import modules
Export modules
Operator modules
Developer info
Module settings
Describing the operator modules
Operators are modules that will alter the list in any way. If no
operators are installed, this menu will only have one item: 'Last saved'.
Currently, Recall comes with this operator module:
Sort
Sorts the list of events by their names or dates. You also have the
option of displaying folders first or last.
See also Import modules
Export modules
Displayer modules
Developer info
Module settings
Developer info
Sorry, no Recall developer information are available yet. I'm currently
working on the API Recall should use when communicating with the modules
through message ports (so you won't need to re-compile your module every
time a new version of Recall is released...)
You must be registered as an Recall user before you are allowed to release
a Recall module.
Main window
This is the main window where all the events are listed. Manipulating the
events listed in the listview will affect the contents of Text, Date and
Attributes windows.
Adding an event
Cut event
Paste event
Recursive folders
Making a folder
Orientating yourself
List of events
Renaming events
Save project
Test project
Cancel
See also Text window
Date window
Attributes window
Creating an event
You can add a new event to the list by clicking on 'New' in the main
window. The stringgadget below the listview will become activated,
allowing you to enter the name of the event. The length of the name is
limited to 255 characters.
If you have many events of the same type (i.e. birthdays), they should be
grouped together in a folder.
The name you enter, will only be added to the list if you press return.
Failing to do so, will cancel the creation of the new event. Pressing
return will add the new event at the bottom of the list. The listview
will automatically scroll the list to show the new event. The new event
will be highlighted to indicate that it is the current active event.
The number of events are only limited by the available memory.
See also Making a folder
Using cut
Several windows have a Cut-button. This button can be used to delete,
copy or move data between different events/folders.
When selected, Recall will copy the selected data to a buffer and remove
it from the listview. Recall will detect what kind of data is being cut
and place it in its own buffer. Currently buffers exist for these types:
Event, Text and Date.
Any subsequent calls to Cut will erase the contents of the specific
buffer.
See also Using paste
Using paste
Several windows have a Paste-button. This button can be used to retrieve
any data in a buffer. This button is disabled if the buffer does not
contain data (this does not happen to the Textwindow Paste-button, since
the buffer may contain text copied/cut from other applications).
When selected, Recall will insert a copy of the buffer in the listview.
The buffer will not be emptied! This allows you to duplicate data.
See also Using cut
Recursive folders
Recall folders are pointers to a group of events. A possible project
could look like this:
rootlist
|
event1---list of texts---list of dates
| | |
| text1 date1
| |
| text2
|
dir1------children
| |
| event1.1-----list of texts...
| | |
| | text1
| |
| dir1.1---------children
event2 | |
event1.2 event2.1----list of texts...
etc.
When displaying this project it would show the events in this order:
event1
event1.1
event2.1
event1.2
event2
So when Recall discovers a folder, that folder will be parsed before any
succeeding events in the current list.
More levels of folders requires more stack and Recall will monitor the
stack and allocate more if it are about to run out.
See also List of events
Orientating yourself in the project
List of events
All events in Recall will appear in this listview and the events will be
shown in priority from top to bottom.
The list may contain folders which are not 'real' events, but rather a
group of one or more events of the same type and they can be accessed by
doubleclicking on the folder name.
NOTE That the update will be rather slow when doubleclicking on folders
and all the windows (Event, Text, Dates and Attributes) are open.
This is NOT a bug in Recall! Unfortunately, gadtools isn't very
fast...
See also Adding events
Adding folders
Renaming events
You can change the name of the event any time by selecting the event in
the listview and alter the name in the stringgadget below the listview.
Making a folder
Pressing 'Makedir' will activate the stringgadget below the listview,
allowing you to enter the name of the new folder. The stringgadget will
already contain the characters '>> ' indicating that is a directory. The
length of the name is limited to 255 characters.
The name you enter, will only be added to the list if you press return.
Failing to do so, will cancel the creation of the new directory. Pressing
return will add the new folder at the bottom of the list. The listview
will automatically scroll the list to show the new folder.
The implementation of folders allows you to group events of the same type
together. This results is a much more surveyable project. For example
could all birthday events profitably be positioned inside a folder called
'Birthdays'.
Since a folder is not an event in itself, you will not be able to add
text, date to it or change the attributes.
The number of levels of folders are only limited to your available memory.
See also Recursive folders
Orientating yourself in the project
Anyone familiar with directory utilities like DirectoryOpus, DirMaster or
such will recognize Recall's method of handling folders.
Doubleclicking on a directory in the list of events will make that folder
the active one.
The Root button will bring you to the first level.
The Parent button will bring you to the previous
level.
See also Recursive folders
Saving the project and quitting
When clicking on Save, Recall saves the current project under the default
name and exits.
The project can be saved without exiting, by selecting Project->Save from
the Project menu. If you want to save the project under a different name
you can achieve this by selecting Project->Save as...
If Recall is resident in memory when you save your project, Recall will be
notified and load the new project.
See also Project menu
Cancel
Testing a project
When creating a new project of events, there is sometimes a wish to try
things out before saving to disk. This can be achieved by clicking on the
Test-gadget or by selecting the menu-item Project->Test.
When selected, Recall Preferences will start Recall and go through the
list of events and display them according to their attributes. Recall
must be available in the same directory as Recall Preferences.
See also Project->Test
Cancel all changes and quit
Clicking on the Cancel-gadget will terminate the program without question,
unless the Settings->Acknowledge? menu-item is checked. All changes done
to the project will be lost.
See also Settings->Acknowledge
Save
Text window
An event would be of much use if it didn't contain some data. In this
window you describe what the event should display or do.
Adding text to an event
Using cut
Using paste
Getting a filename
Inserting a field
Describing each field
See also Main window
Date window
Attributes window
Adding text to an event
Pressing 'New' in the text window will activate the stringgadget below the
listview, allowing you to enter the text. The length of the name is
limited to 255 characters. Although the length of text can be as much as
255 character, you should keep in mind that alerts and requesters on a
standard 640 pixels wide screen are limited to a width of 77 characters.
The text you enter, will only be added to the list if you press return.
Failing to do so, will cancel the operation. Pressing return will add the
text at the bottom of the list. The listview will automatically scroll
the list to show the new text.
The number of texts attached to one event are only limited by your
available memory.
See also Getting a filename
Inserting a field
Setting the type of event
Selecting a command from a filerequester
Instead of typing in the programs you want to execute from Recall, you can
simply click on the GetFile-gadget to the left of the stringgadget.
Clicking this button will bring up a filerequester, allowing you to select
the command you want to run. The name of the selected file will be copied
to the stringgadget and the cursor will be positioned at the end of the
string, allowing you to enter any parameters.
This button will only be available if the type of event is set to either
CLI, WB or AREXX.
See also Setting the type of an event
Inserting fields
One of the most powerful features of Recall, is that it understands
certain fields inside the text. These fields will be calculated during
the execution of a project and the resulting value will be displayed
instead of the date field.
The format of the date field is {<calculate:>DD/MM/YYYY} for calculation
fields and {<display>} for display fields, and MUST be exactly in that
format! Notice the bracket parenthesis surrounding the date field - they
can not be omitted!
To simplify the process of inserting fields, these fields can be selected,
and automatically inserted at the cursor-position, from a listview by
pressing the pop up gadget to the right of the stringgadget.
There is no limit to the number of fields one line can contain as long as
the number of characters does not exceed 255.
Some examples to demonstrate its power:
"I will be {years:08/05/1970} years in {days:08/05/1970} days"
may be displayed as
"I will be 24 years in 7 days".
"Time left to my date with Cindy: {timelapse:31/12/1995 15:30}"
may be displayed as
"Time left to my date with Cindy: 03:15".
"{minutes:31/11/1994 00:00} minutes left to midnight"
may be displayed as:
"7 minutes left to midnight"
"Today: {weekday}, {date} {time}"
may be displayed as
"Today: Sunday, 1.May.94 13:34:23"
"Maxiplan Account_{month}.exc"
may be executed as
"Maxiplan Account_5.exc"
See also Describing each field
Describing each field
Here's a brief explanation of each field:
Field Result
{days:DD/MM/YYYY} Number of days between now and the given
date.
{months:DD/MM/YYYY} Number of months between now and the given
date.
{years:DD/MM/YYYY} Number of years between now and the given
date.
{hours:DD/MM/YYYY HH:MM} Number of hours between now and the given
date and time.
{minutes:DD/MM/YYYY HH:MM} Number of minutes between now and the given
date and time.
{timelapse:DD/MM/YYYY HH:MM} Hours and minutes between now and the given
date and time
{date} Displays the current date.
{time} Displays the current time.
{weekday} Displays the name of the current weekday.
{day} Displays the current day in the month.
{month} Displays the current month in the year.
{year} Displays the current year.
{hour} Displays the current hour.
{minute} Displays the current minute.
NOTE: Only dates after 01.Jan.78 will return correct values except for
{years:DD/MM/YYYY} which only takes the years in account.
See also Inserting fields
Adding text to an event
Date window
The calendar allows the user to enter the date of the event in a very easy
and intuitive way. Near the top of the calendar is a display gadget that
shows the selected date. When a component of the date is of no
importance, it will be displayed as two or more '*', meaning the current
day/month/year/hour/minute.
Creating a new date
Using cut
Using paste
Setting the day
Setting the month
Setting the year
Setting the period for a date
Setting the repeat-value
Setting the time
Setting the period for a time
Setting the repeat-value
Setting the weekday
Tuning the date and time
Examples
See also Main window
Text window
Attributes window
Creating a new date
Recall allows dates to be attached to an event. The event will only be
shown when the date occur.
The number of dates attached to the same event are only limited by your
available memory.
Setting the day
To set the day of an event, simply click on one the numbered gadgets in
the calendar-window. The selected day will be highlighted and displayed
in the date field. If you want the event to appear on any day, please
select the gadget '**' meaning any day. '**' will always be replaced by
the current day.
NOTE: It is of no use setting the date to Before or After day ** since **
will be replaced by the current day.
See also Setting the month
Setting the year
Setting the month
The month is set by cycling through the month-cyclegadget until the
desired month is activated. If you want the event to appear every month,
please select the item 'Any month'.
NOTE: It is of no use setting the date to Before or After month ** since
** will be replaced by the current month.
See also Setting the day
Setting the year
Setting the year
The year of the event is set by entering the desired year in the
integer-gadget next to the month-cyclegadget. If you want the event
to appear every year, enter a zero or nothing.
Entering a number of length less than four, will cause the event to be
displayed each year the given year match with the current year. In other
words, entering year='3' (displayed as '***3') will display the event
every year that ends with '3'.
NOTE: It is of no use setting the date to Before or After year **** since
**** will be replaced by the current year, and thus the event will
never be displayed.
NOTE: Acceptable values are from 1978 to 2099.
See also Setting the day
Setting the month
Setting the period for a date or time
It is sometimes desirable to display an event n days before or after a
specified date or n minutes before or after a specified hour.
Recall allows the user to set the interval of days or minutes, and the
event will only be displayed during that interval.
This gadget becomes available only when the date is set to Before or
After.
See also Setting the repeat value for a date
Examples
Setting the repeat value for a date or time
It is sometimes desirable to display events at repeating intervals. This
can be achieved by entering the desirable minute-interval in this gadget.
This gadget becomes available only when the prefix is set to Before or
After.
Another way of making a repeating event, is of course by setting one or
more of the components to a zero (indicated by '**' in the display).
See also Setting the period for a date
Examples
Setting the weekdays
Events may pop up on certain weekdays. If no weekdays are checked, the
event will pop up every day of the week (whenever the date matches the
current date). Whenever an item is checked, the event will pop up on that
weekday ONLY.
Examples:
After 23/10/1994, Monday and Friday checked:
The event will appear after 23/10/1994 every monday and friday.
NOTE: Checking weekdays when the date is full (i.e. when no item is set to
'**' and set to EXACT), will probably prevent the event from
showing.
NOTE: Checking all weekdays equals checking none.
See also Examples
Setting the time of an event
Setting the time is just as simple as setting the time in Commodore's
Time Preferences. Just drag the sliders to the desired level. The
selected hour and minutes will be shown in the main window. Setting any
of the sliders to the bottom level will replace its value with '**',
meaning that it will be replaced by the current time when the project is
run.
NOTE: It is of no use setting the time to Before or After **:** since
**:** will be replaced by the current time.
NOTE: That Recall isn't synchronized with the internal clock of your
Amiga. An event that should be shown exactly 13:00 might as well be
shown on 13:00:59 if you started Recall 12:00:59 (Recall will just
be idle the requested time (set by the WAIT tooltype)).
See also Tuning the date and time
Examples
Tuning the date and time
It may be times when you do not want the events to appear on a specific
date or time, but rather before or after. This can easily be achieved by
adjusting the cycle-gadgets at the top of both date- and time-groups in
the calendar. The default value is 'Exact'.
Exact
The event will appear ONLY at the given date or time. If you do not turn
your machine on that day, you will never see the event!
Before
The event will appear only BEFORE and EXACT the given date or time. If
the selected date is '07.**.1993', the event will appear on the first 7
days every month during 1993. If the selected time is '11:00', the event
will appear between '00:00' and (not including) '11:00'.
After
The event will appear only AFTER and EXACT the given date or time. If
the selected date is '07.06.1993', the event will appear every day from
'07.06.1993' to eternity. If the selected time is '11:00', the event will
appear between '11:01' and (including) '23:59'.
See also Setting the period of date and time
Examples
Attributes window
Each event has a defined set of attributes which may be set individually
of other events.
Group
Flash
Confirm
Postpone
Multitask
Centre
Setting the type
Setting the show-type
Setting the screen
Setting the start-up directory
Setting the stack
Setting the priority
Setting the alert timeout-value
Describing input events
See also Main window
Text window
Date window
Describing input events
Grouping events
Events of the same type may be grouped together and displayed in the same
requester or alert. Executable events will still launch its programs one
after the other (unless all executables have the Multitask-flag set), but
if Confirm is checked, you may acknowledge the whole group as one.
Currently, Requester and Alert events only uses the first event's
attributes when grouped. So if the first event is to be confirmed all
events grouped together with this event will also have to be confirmed.
If you do not want this to happen, don't check the Group-button.
See also Multitask
Flashing the screen
Important events sometimes need to be call the attention of the user with
something extra, and by checking this checkbutton, Recall will flash the
screen and signal with a beep (V38+) before displaying the event.
Confirming events
If Confirm is checked, Recall will add an extra button to all requesters
(including confirm-requesters for executables) allowing you cancel the
event for the rest of the day.
Postponing events
If Postpone is checked, Recall will add an extra button to all requesters
(including confirm-requesters for executables) allowing you to postpone
the displayed event or events if grouped.
Postpone is very useful with daily events. Pressing Postpone in the
requester will put off the event until the next checking of the project.
In other words, it will keep nagging you until you acknowledge or cancel
it.
Here's a little example:
Let's say a message pops up asking you if it should run the backup utility
because it is 60 days since you last took a backup of you harddrive.
Let's just assume that you haven't got time to do the backup right now.
If you press Cancel, Recall will cancel that event and not display it
before another 60 days have passed. Pressing Postpone on the other hand,
will just put it off until the next time Recall checks the project.
Multitasking launched binaries
If Multitask is checked, Recall will launch all started programs as a
separate task and immediate continue with the next event in the project.
If this item is not checked, Recall will kindly wait for the executed
program to exit before continuing with next event in the project.
NOTE
Currently AREXX commands are not sent asynchronously. The multitask
switch applies to CLI and WB events only
Centring requesters
Checking Centre will force all ReqTools requesters to be centred on the
screen.
The state of this checkbutton will be ignored if the tooltype USEREQTOOLS
is FALSE or NO.
See also Describing the Settings menu
Running the programs
Selecting the type of event
In what way an event will appear, is determined by which type is chosen
for that event. Currently these modes are available:
Requester
All texts will be displayed in a standard requester with an OK-button.
The maximum number of lines which may be displayed is only limited by
the screens resolution and font. The requester will automatically adjust
to the font used by your system. The requester will have more buttons if
either Postpone or Confirm is checked.
Yellow alert
All texts will be displayed using a standard RECOVERY (yellow) alert. The
alert will be opened on a 640*200 screen on a NTSC-machine or a 640*256
screen on a PAL-machine. The font used will always be Topaz8. The
frame of the alert will be automatically adjusted to fit the number of
lines shown and all lines will be centred.
Press either left or right mousebutton to continue. If Confirm is
checked, the alert will contain a line at the bottom of the alert
announcing that pressing the left mousebutton will continue and pressing
the right mousebutton will cancel the event.
Red alert
As 'Yellow alert' but all texts will be displayed in a DEADEND (red)
alert instead of a RECOVERY alert. Useful for VERY important events.
CLI
All text-lines will be run as if they were typed in a Shell window. If
several programs is requested, they will be run after each other in
priority from top to bottom.
Running larger batch-programs can be done easily by entering "execute
<filename>". Recall also accepts remarks and 'execute <filename> ;
remark' will work without problems.
WB
All text-lines will be launched like programs from Workbench. This means
that the programs may take advantage of any data in their icons. Use this
whenever you start a program that has an icon.
AREXX
All text-lines will be launched as AREXX-scripts. That way you may
control other applications directly from Recall.
Input
Probably the most powerful of all Recall event-types. Each of the text-
lines will sent to the input stream as one event (with qualifiers). The
possibilities is unlimited. May also be used to pop up programs that
react to certain hotkeys or execute macros etc.
See also Confirm
Postpone
Describing input events
Describing input events
Input events must follow a certain syntax or else an enforcer-hit will
occur:
[<Class>] {[-][<Qualifier>]} [-][upstroke] [<Keycode>]
All keywords are case insensitive.
Classes
This parameter is optional and if missing the default `rawkey' is used.
Currently these classes are defined:
rawkey This is the default class and covers all keyboard events.
For example `rawkey a' or `a' will send an 'a' to the input
stream (equal to the user pressing an 'a'). You must specify
a keycode for this class.
rawmouse This class describes all mouse button events. You must
specify a keycode for this class.
diskinserted Events of this class are generated when a disk is inserted
in a drive. This class has no keycodes.
diskremoved Events of this class are generated when a disk is removed
from a drive. This class has no keycodes.
Qualifier
Qualifiers are 'signals' that must be set or cleared by the time the
hotkey is activated. For each qualifier that must be set you supply its
keyword. All other qualifiers are expected to be cleared by default. If
you want to ignore a qualifier, just set a `-' before its keyword. The
qualifiers inside parenthesis are only available on kickstart V38 and
higher.
lshift, [left_shift] Left shift-key
rshift, [right_shift] Right shift-key
shift Either shift-keys
capslock, [caps_lock] Caps lock key
caps Either shift key or caps lock key
control, [ctrl] Control key
lalt, [left_alt] Left alt key
ralt, [right_alt] Right alt key
alt Either alt key
lcommand, [lamiga],
[left_amiga], [left_command] Left Amiga/Command key
rcommand, [ramiga],
[right_amiga], right_command] Right Amiga/Command key
numericpad, [numpad],
num_pad], [numeric_pad] This keyword must be used for any key on
the numeric pad
leftbutton, [lbutton],
[left_button] Left mouse button
midbutton, [mbutton],
[middlebutton], [middle_button] Middle mouse button
rbutton, [rightbutton],
[right_button] Right mouse button
repeat This qualifier is set when the keyboard
repeat is active. Only useful for the
'rawkey' class.
Note: Commodities V37 has a bug which prevents the use of `leftbutton',
`midbutton' and `rbutton' as qualifiers. This bug is fixed in V38.
upstroke
Normally a hotkey event is generated when a key is pressed. If the event
should be generated when the key is released, supply the keyword
`upstroke'. When both press and release of the key should generate an
event, use `-upstroke'.
Keycodes
Each InputEvent class has its own keycodes. The keycodes inside parenthe-
sis are only available on kickstart V38 and higher.
rawkey: a-z, 0-9, ... ASCII characters
f1, f2, ... Function keys
up, [cursor_up']
down, [cursor_down]
left, [cursor_left]
right, [cursor_right] Cursor keys
esc, [escape],
backspace, del, help
tab, comma, return
space, [spacebar] Special keys.
enter
[insert], [delete]
[page_up], [page_down]
[home], [end] Numeric Pad keys. Each of these key
codes must be used with the `numericpad'
qualifier keyword!
rawmouse mouse_leftpress Left mouse button.
mouse_middlepress Middle mouse button.
mouse_rightpress Right mouse button.
Note: To use one of these key codes, you must also set the
corresponding qualifier keyword, e.g. rawmouse leftbutton
mouse_leftpress
Here are some examples to clarify:
'alt t' Will pop up a program that respond to the 'alt t' hotkey.
'shift K'
'e'
't'
'i'
'l' Will paste the word 'Ketil' into an active shell, stringgadget,
texteditor or whatever.
NOTE: Only one input event per line is allowed. Recall will generate
an enforcer-hit otherwise.
WARNING: Using ASCII codes in input events may be dangerous, as they can
trigger short-cuts for buttons, mess up text in a texteditor
etc. Use at your own risk!
Selecting how often the event will be displayed
Recall uses two methods to determine wether an event will be shown or not.
First it checks the state of the Show-cyclegadget, then it excludes those
events that don't match the current date and time.
These are the states of the Show-cyclegadget:
Startup
The event will be shown only the first time Recall checks the project.
Always
The event will be displayed every time Recall checks the project. How
often this is, depends on the settings. If the checker is resident in
memory, that may be once every minute (the idle time may be changed using
tooltypes). Avoid using this mode when the checker is made resident, as
this would certainly increase Recall CPU usage as the event would pop up
every minute.
Daily
The event will only be run the first time Recall is run that day, in other
words; only once a day.
Never
The event will never be displayed. Useful if you want to temporarily
prevent an event of being displayed.
See also Setting the tooltypes
Selecting a screen
Allows the user to set the name of the public screen on which the
requester will appear. You may either type in the name or press the pop-
up gadget and select among the current public screens that are open.
If the requested screen does not exist, Recall will pop up the requester
on the default public screen.
NOTE: Even if some screens are public and appear in the public list, some
may be public in a 'private' manner and thus Recall requesters
cannot be displayed on that screen.
The screen is only used for determine on which screen the requesters
should appear.
Selecting a directory
Allows the user to set the program's current directory. You may either
type in the directory yourself, or press the getdir-gadget and use a
filerequester to select a directory.
The directory is only used when starting CLI or Workbench programs.
Setting the stack of an executable
Allows the user set the stack size of the program started by Recall. If
the program is started as a Workbench task, Recall will use the stack in
the program's icon if it is larger than the one requested.
The stack is only used when starting CLI or Workbench programs.
Setting the priority of an executed program
Allows the user to set the priority of the program started by Recall.
The priority is only used when starting CLI or Workbench programs.
Setting the timeout period for alerts
Allows the user to set length of time the alert should wait for the user
to respond. This time is the number of video frames the alert should
remain up for. Setting the timeout-value has no effect on machines with
kickstart lower than 39.
This switch can be very useful for machines that run a BBS and that needs
to go on with their script if the user doesn't reply.
NOTE
The timeout value is only used for Yellow and Red alerts.
Some examples on how to configure your events
Period:
Date: Before 07/**/1994
Date period: 2
Result: Displayed on the 5th, 6th and 7th day every month of 1994
Date: Before 14/12/****
Date period: 7
Weekdays: Sunday (are checked)
Result: Displayed on the second sunday of december every year.
Time: After 12:00
Time period: 120 (=2 hours)
Result: Displayed from 12:00 to 14:00
Repeat:
Date: After 01/01/1994
Date repeat: 14
Result: Displayed every 14th day after 1st of january 1994
Time: After 12:00
Time repeat: 10
Result: Every 10th minute after 12:00
Combinations
Date: After 01/10/1994
Date period: 10
Date repeat: 3
Result: Displayed every 3rd day between 1st and 10th of october
1994.
Time: After 12:00
Time period: 120
Time repeat: 10
Result: Displayed every 10th minute between 12:00 and 14:00
Advanced combinations
Date: After 01/10/1994
Date period: 10
Date repeat: 3
Time: After 12:00
Time period: 120
Time repeat: 15
Result: Displayed every 10th minute between 12:00 and 14:00 every
3rd day between 1st and 10th of october 1994.
Date: After 01/10/1994
Date period: 10
Date repeat: 3
Weekdays: Monday, Wednesday, Friday (are checked)
Time: After 12:00
Time period: 120
Time repeat: 15
Result: Displayed every 10th minute between 12:00 and 14:00 every
3rd day between 1st and 10th of october 1994 IF they happen
to be either a monday, wednesday or friday.
See also Setting the period
Setting the repeat-value
Describing the Project menu
New...
Selecting this item will clear the list of events allowing you to
start from scratch designing your new project of events. If the menu item
Settings->Acknowledge is checked, you will be warned if changes to the
project have not been saved.
Open...
Brings up a filerequester and lets the user select a new project to be
loaded. The new project will replace the current project. If the menu
item Settings->Acknowledge is checked, you will be warned if changes to
the project have not been saved.
Include...
Brings up a filerequester and lets the user select a project to be joined
with the current project. The new project will appear at the end of the
active directory.
Import
Recall uses modules to import other project formats into Recall. These
modules can be started by selecting them in this submenu This menu item
will not be available if no import modules were installed.
Save
Saves the project to disk under the default name, without exiting the
program.
Save as...
Lets the user save the current project under a different name.
Export
Exports the current project to different formats. This menu item will not
be available if no export modules were installed.
Test project
Runs the current project. Recall must be located in the same drawer that
Recall Preferences.
Iconify
Closes all open windows and iconifies the program to an icon placed on the
workbench screen. The program may be un-iconified by double-clicking on
the iconified icon.
About...
Loaded with interesting information. Try it out immediately!
Quit
Terminates the program. If the menu item Settings->Acknowledge is
checked, you will be warned if changes to the project have not been
changed.
See also Import modules
Export modules
Other menus: Search
Edit
GUI
Settings
Describing the Edit menu
Last saved
Restores the last saved project under the default name to memory.
Other operator modules will appear at the bottom of this menu
See also Operator modules
Other menus: Project
View
Search
GUI
Settings
Describing the View menu
Displayer modules that are installed on your system will appear in this
menu. If no modules are installed this menu will not be displayed.
See also displayer modules
Other menus: Project
Edit
Search
GUI
Settings
Describing the Search menu
Find...
Opens a requester allowing the user to enter the name of the event to
search for. If a name is found, it will be made the active one and
display all its attributes, texts and dates.
Find next
Search for the next occurrence of a word in the current list and all its
children without showing the requester. This item will be ghosted if no
search name has been entered in the find requester.
Replace...
Opens a requester allowing the user to enter the name of the event to be
replaced by another name. If a name is found, you will be asked if the
program should replace it, ignore this word and search on or just cancel
the operation.
Replace next
Replaces the next occurrence of a word without showing the requester. A
requester will inform you of how many occurrences have been replaced.
Ignore case
If checked, the search will be case insensitive.
Only whole words
If checked, the whole name of the event must match the given search string
in order to be found.
Replace mode
Toggles between search and replace modes.
Other menus: Project
Edit
View
GUI
Settings
Describing the GUI menu
Text window
Open/Close the text window.
Date window
Open/Close the date window.
Attributes window
Open/Close the attributes window.
Use screen
If checked, Recall will open it's own screen using the resolution, depth,
width, height, overscan, font and palette selected by the user.
Simple refresh
If checked, Recall will use simple refresh mode when on windows. Simple
refresh mode need not as much memory as Smart refresh windows, but is also
slower.
Close workbench
Toggles the Workbench screen.
Select screen...
Lets the user select the resolution, depth, width, height and overscan of
Recall's own screen. This menu item will be disabled if 'Use screen' is
not checked.
Select font...
Lets the user select the font used by Recall's own screen. This menu item
will be disabled if 'Use screen' is not checked.
Adjust palette.
Lets the user adjust the palette table of Recall's own screen. This menu
item will be disabled if 'Use screen' is not checked. This is the only
implementation that NEEDS reqtools.library (I _have_ implemented my own
requester, but didn't want to include it in Recall because of the increase
in size...)
Other menus: Project
Search
Edit
Settings
Describing the Settingsmenu
Save when exit
If checked, Recall will remember the environment when exiting. If not
checked Recall will use the environment last saved to disk next time it is
run.
Acknowledge
If checked, Recall will display a warning message if the changes done to
the project are about to be lost.
Sub menu: Modules
Affect all events
If checked, all events will be affected by an operator or displayer
module. If not checked, only the current folder will be affected by
it's operation.
Parse folders
If checked, both operator and displayer modules will affect/display
folders inside the current folder. If not checked, only the current
folder will be parsed.
Open...
Lets the user select a Recall environment file to load.
Save
Saves the environment to disk under the default name.
Save as...
Saves the environment to disk under another name.
Other menus: Project
Edit
View
Search
GUI
Known bugs
Recall:
- Input events cause enforcer-hits when wrong input are provided. Follow
the guidelines carefully.
Preferences:
- GUI does not default to Topaz80 when font is too big.
See also Troubleshooting, Tips & Tricks
Describing input events
Future developments and plans
Implementations to do:
- AREXX control for both Recall Preferences, allowing external control and
macro creation.
- Replace text routine
- LOGFILE=<filename> tooltype to keep a log over events showed by Recall.
Nice if you run a BBS or something and want to keep track of what Recall
has done.
- A catch-up feature, so no events are missed.
- Startup-drawer where you can put the modules you automatically want to
run when Recall Preferences is started.
- Paste text should filter out unknown characters (tab/eol/lf).
- Paste text should create more lines if the clipboard buffer contains
more than one line.
- Hooks that let you control the listview through the stringgadgets.
- AM/PM time in countries that use such format (TOOLTYPE)
- Default to Topaz80 when a window is too big for the screen.
- Better search-routine. Should jump recursively backwards as well.
- HELP menu listing the important topics.
Modules:
- Print export module.
- Almanac/Filofax module.
- Export module: Generate a list containing the text of all events (with
calculation fields replaced by their values). (Suggested by Per Sverre
Vogt-Hansen)
- Module that let you alter the inner flags of an event (if an event is
cancelled you may 'un-cancel' it...).
- Match module. Display all events that match given data.
Troubleshooting, Tips & Tricks
The event does not show even if the date and time is set right
Try setting 'Show' to 'Always' and try again. The event might have been
run earlier that day... If you cycle through the Show-gadget, Recall
Preferences will reset the daily flag.
The event will not execute!
Recall needs the full path! If you for example use the Say-command, you
must enter "SYS:Utilities/say" or else it will not be able to find it.
How do I make an annual event?
Set the date of the event to DD.MM.****, where DD and MM represents the
day and the month you want the event to pop up. Setting the year to
**** is the same as saying 'every year' and **** will be replaced by the
current year.
How do I make a birthday event?
There is unlimited number of ways to enter a birthday-event, depending
of how you want the event to be shown. Here's one suggestion.
(Problem: Remind me of Rebecca's birthday on 08.05.1970)
Set the date to 'Before', '08.05.****'
Set the time to 'After', '11:00'
Days='3'
Repeat='0'
Text='Rebecca is {years:08/05/1970} on 8th of May'
Show='Daily'
This event will be displayed daily on the 6th, 7th and 8th of May, leaving
enough time to buy her a flower or whatever... (...am I getting soft or
what ;).
Testing an event with Show set to 'Daily'
When testing such a project the event will ALWAYS be shown if it has not
been displayed that day. Furthermore will it not show if it already has
been displayed that day. This is inevitable, since Recall Preferences do
not alter the project's private structure.
How to make events appear x days BEFORE and y days AFTER a date?
If you want an event to be displayed 3 days before the 10.10.93 AND 2 days
AFTER, you must simply set the date to BEFORE 16.10.93 and days to 5!
When I try to execute a program from Recall it crashes!
When running Recall from the WBStartup-drawer, some programs seem to
cause an out of memory-guru. This is not a bug in Recall! I have only
discovered this error while running ToolManager from WBStartup and
Maxiplan V4.09 (started as an event within Recall) while running under
WB3.0. Other programs might cause similar problems. The solution is
however, quite simple; enter 'Wait 2' on the line above your program, and
your program will work just fine.
How do I play a tune while displaying an event?
You have to create two events to do a thing like that (or by creating a
little batch-file to execute). The first event must be of execute-type:
"run >NIL: play birthday.mod". The second event must be of alert- or
requester-type with the desired text. The dates of the two events must of
course be the same.
How do I display events before the first of a month?
If you want the event to be shown x days before the 1st of every month,
set it up like this: n-1 days before the last day in the month or i.e.
after 25th.
See also Known bugs
How to handle the CPU workload
History
The Recall version follows the notation <version>.<revision>, meaning that
V3.10 is greater than V3.1. The current version can be printed out using
'Version full Recall' or by selecting About from the Project-menu in
Recall Preferences.
In the early days
This program actually started out as a small AREXX script, size 883 bytes!
You might say that this project has grown significantly since then ;)
24.May.93 V1.0
First released version.
25.May.93 V1.1
RecallPrefs used to crash when it loaded an old project and the user
selected 'Use'. Now fixed.
29.May.93 V1.2
RecallPrefs now tries to open its window using the current font set
by the user. If this fails (usually when the window becomes too
big for the screen), it settles for the standard Topaz8-font.
RecallPrefs now uses NewLook-style in menus.
04.Jun.93 V1.3
Recall now only updates the project when it's absolutely necessary .
This saves a lot of disk-access. Fixed a bug in the compare date & time
header file. Fixed a bug in the purge-function which removed events
with empty dates... Updating the attributes of the event is now
speeded up. RecallPrefs disables the corresponding
(Exact/Before/After)-cyclebutton if Datestring or Timestring are
empty. Made more compliant with Commodore's Style Guide.
08.Jun.93 V1.4
Oooooops, made a MAJOR mistake by releasing V1.3 too soon! In the
last minute a minor bug was fixed, and this resulted of course in a MAJOR
bug at another location in the program! Selecting 'Before' or 'After' with
dates did not work at all... nor did # Days or Repeat every #... I
PROMISE to check more thoroughly in the future... When testing the
project from RecallPrefs, the program asked for a assign called 'REC:'.
Now removed... Recall must be located in your working path.
(i.e. >path work:recall). Fixed a bug which resulted in a ghosted
textstring when editing a line of text...
30.Oct.93 V1.5
Fixed a bug which caused Recall to return a returncode and generate an
error when testing a project from 'Recall Preferences'. Now fixed.
08.Nov.93 V1.6
Fixed two tiny bugs which caused Enforcer hits. Since they where
positioned in the main loop of both 'Recall Preferences' and Recall, hits
appeared on every GADGETUP IDCMP and event. Now fixed. (Reported by
Henning Schmiedehausen). Selecting the GetFile gadget when no event was
selected also caused an Enforcer hit. Now fixed. The Add Text gadget was
sometimes not disabled, making it possible to add text to a non-existing
event. Now fixed. Added an extra menu item to save project under default
name without terminating the program. (Suggested by Raoul Rodriguez).
Also, the new archive is better organized with drawers for preferences,
install and documentation. The Installer-script has been rewritten. The
documentation has been processed once again, making (hopefully) easier to
read (all chapter has a right justified margin...).
12.Nov.93 V1.7
The two binaries is now reduced in size. The sources may now be compiled
by double-clicking on the Build-icon in the Source drawer. Added more
tips to 'Troubleshooting'. The installer-script is made more generic and
will also detect if the user already has a Recall project and rename it to
'Recall_OLD.prefs' when installing new example project. Also reorganized
the .guide, so that the chapters appear in the same order as when using
browse. Corrected a few mistakes and misspellings in the documentation.
Fixed a bug which caused repeating events not to be displayed when they
should. Also, when counting days between different months and years did
not come out right. Now fixed. (thanks to Juha Kallioinen for questions
about weekly events, which led me into finding this bug!)
16.Nov.93 V2.0
This version is re-written from scratch. Uses MUImaster.library for
creating a great looking GUI. Font-adaptable window. Sizable window.
Short-cuts for most functions. IFF-FORM .prefs-file. Possibility to
group events, flash screen before event, automatically delete expired
events, acknowledging events alerts. Confirm actions in Preferences.
Setting the date and time from a 'calendar'. Possibility to copy and
sort lines of text. Better readability and better organized .guide.
Documentation also included in ASCII-format. Unstall-script to delete the
Recall package on your harddisk. Importing and exporting projects of
different formats (may be controlled via the Preferences). More show-
options. More date fields in the same line. Do not use reqtools.library
if not requested. The program may be iconified. On-line-HELP. Although
Recall has gained a lot of functions, it is actually smaller in size!
Optimized code if a faster CPU is available. Much more...
07.Dec.93 V2.1
NEW All binaries and the installation-script is localized. English,
french, spanish, german, swedish and norwegian catalogs are included.
NEW Speeded up Recall 30%!!!
NEW All binaries has reduced in size! Rewritten to use tiny ROM-routines!
NEW Postponing events! If you put off an event, it will keep nagging you
until you acknowledge it!
NEW Updating event's attributes is now speeded up (a lot!) in Preferences.
NEW Safer IFF-saving.
NEW Settings menu-item: Confirm executables?
NEW Recall requesters now state the current date in their titles. Uses
the selected dateformat.
NEW Recall uses less memory than before!
NEW Rearranged the GUI a little: The date and time are separated from the
text-group, the getfile-gadget now uses the button-background set in
MUIprefs.
NEW The day-of-the-month gadgets are now of BOOL type (like Time
Preferences).
NEW The calendar can now be controlled from the keyboard.
FIX Events with x days BEFORE or AFTER were not displayed (Reported by
Dirk Böhmer).
FIX Acknowledging alerts did not work, unless 'Acknowledge events?' was
NOT checked. This bug did not appear when the binaries was not
optimized by the compiler... Strange...
FIX The GUI of the installation-script was messy if you did not use the
Topaz.font (Reported by Heikki Kantola).
FIX The GetFile-gadget did not work! (Reported by Olav Müller).
FIX GetFile did not allocate it's memory properly.
FIX The GetFile-gadget was not documented.
FIX Purging did not remove all the events that it should.
FIX Corrected several bugs regarding ghosted buttons and the update of
attributes.
FIX One node in the documentation of Recall was not linked properly.
(Reported by Olav Müller).
FIX Recall and Recall Preferences did not deallocate all used memory when
terminating.
FIX Recall crashed if Use ReqTools? was checked but not available!
FIX Events set to whenever or anytime did not show if BEFORE or AFTER was
selected.
FIX The stringgadgets do no longer get activated when selecting a new
event/text from the listviews, making it easier to use the keyboard
short-cuts.
FIX Recall Prefs no longer asks for a file to import or export when
SYS:Tools/ReConvert is not available...
FIX Changed the name of some items. 'Whenever' and 'Anytime' changed to
'Every day' and 'All day', respectively. 'Once a day' has been
changed to 'Daily'.
FIX Enforcer Hit when accidentally loading certain non Recall IFF-files.
FIX All output to shell from Recall will now be routed to the same shell-
window!
03.Mar.94 V2.2
NEW Italiano catalogs included.
NEW Nederlands catalogs included.
NEW SBasePro 4 batch script for converting a database of birthdays to a
Recall project included. Script provided by Thorsten Gau.
NEW Recall only updates the project when the user has selected a button
which alters any of the internal flags. Less disk-access.
NEW The ASL requester now excludes the .info-files.
FIX Recall now handles dates after 30. January 2000.
FIX When displaying requesters with only one button (no Cancel-button),
pressing OK was interpreted as Cancel.
FIX Events of type 'Execute' were only run once when 'Confirm executables'
was not checked.
FIX You could always cancel an alert, even if the 'Confirm Alerts?' was
not checked...
FIX Prefs only allocates memory for the Asl-requester when needed.
FIX Fixed a bug in the IFF save-routine, which caused a GURU on some
machines.
FIX Safer IFF-saving.
FIX All binaries reduced in size (again). The checker is now only 8Kb!
FIX Recall used c-lib routines to get and calculate date and time. This
could be quite annoying when running SnoopDOS in the background, as
these functions access ENV:TZ a lot. Switched to ROM-routines
instead.
FIX Recall Preferences did not show events which printed texts to a shell-
window when testing the project.
FIX Recall Preferences would not update the list of texts when the first
event in the list was highlighted, and user opened another project.
FIX Corrected some mistakes and misleadings in the docs.
The ReqTools.library will not be included from V2.2 and later in a
desperate try to reduce the size of the archive. Anyway, 991f all
Amiga-owners already have this library...
28.Apr.94 V2.3
NEW Suomi catalogs included.
FIX Better Nederlands translation. Now fits on a 640x200 screen.
FIX Faster rendering of alerts.
FIX Fixed a bug which caused Alerts to crash on some machines. Thanks to
Olaf Seibert for suggesting the byte-split...
FIX The Recall-documentation contained an unknown link. Reported by
Philip Meyer.
FIX The calendar crashed on some machines when using MUI V2.0.
The source will not be included in V2.3 and later in order to reduce
the size of the archive. (Not many were interested in the source,
anyway...)
V3.0 14.May.95
NEW The checker may stay resident in memory (optional) and keep on
reminding you until you quit the program or turn off your machine.
Will check the project of events every minute (idle time may be
changed). Uses very little CPU time.
NEW The checker is a commodity, and may be controlled via the Commodore's
Commodities Exchange program.
NEW Unlimited number of dates can be attached to the same event.
NEW The calendar now takes weekdays in account.
NEW You can combine weekdays and date, allowing you to make events which
will be shown i.e. the third Sunday in a month etc.
NEW The calendar will put each day on its right weekday in the calendar.
NEW Possibility to set the period before or after a specified time.
NEW Major update of the calculation fields: allowing you to include both
the current date, current time, calculation of days, calculation of
years, current weekday and such in the SAME event! The fields can be
selected and inserted from a requester.
NEW LOTS of new fields types.
NEW Tooltypes support.
NEW Executed programs can be launched either as Shell or Workbench tasks.
Programs started in Workbench-mode will use tooltypes in their icons.
NEW Possibility to group only certain events, flash certain events etc.
NEW Recursive directories, allows you to make folders of events i.e.
keeping all birthday-events in a folder called Birthdays. Unlimited
number of levels!
NEW Modular built. Its functionality may be extended with modules.
Modules included: Import ASCII, Recall V1.x, Recall V2.x. Export
ASCII. Module that sorts events by date or alphabetically. Browser-
module for easy displaying all events.
NEW Search and replace of event names.
NEW Completely new graphic user interface.
NEW Multi-window environment. All windows are 'multitasking'.
NEW No longer needs MUI, but the preferences program is still font-
adaptable and sizeable.
NEW ALL window-positions and sizes (including the ASL requester), as well
as font, screen, palette, etc. may be saved to disk.
NEW Recall preferences will remember all window sizes and positions when
exiting.
NEW Recall can pop up requesters on any public screen.
NEW Requesters may be forced to open on a certain public screen.
NEW Cut and paste of texts and dates between events.
NEW Cut and paste of texts to/from clipboard.
NEW New powerful type of event: Input - generates input-events and hotkey-
presses.
NEW New type of event: AREXX - runs AREXX scripts directly without the
need of RX.
NEW Recall can now display both RECOVERY (Yellow) and DEADEND (Red)
alerts.
NEW Possibility to set the stack of executed programs.
NEW Possibility to set the current dir for executed programs.
NEW Possibility to set the priority of executed programs.
NEW Possibility to set a timeout-value for alerts (V39).
NEW Dansk catalogs.
NEW Svensk catalogs.
NEW Greek catalogs.
NEW Español catalogs.
NEW Français catalogs.
NEW Português catalogs.
NEW Nynorsk catalogs.
NEW Asynchronous on-line help.
NEW Date in the calendar is now shown in your country's format under WB2.1
and higher.
NEW The calendar will show Sunday as first weekday in countries that use
such format.
NEW If Recall is resident in memory and the project is changed by Recall
Preferences these changes will be detected and the new project will be
loaded to memory.
NEW Recall can now function as an alarm clock with snooze function.
NEW ...lots more...
How to report bugs
Keep these things in mind when you report bugs:
o State the version of Recall you are using
o State from where you received this software (PD disk, AmiNet, etc.)
o State you configuration (Kickstart, WB, special tools run from
WBStartup/Startup-Sequence, etc.)
o Check that the bugs are not listed in 'Known bugs', described in
'Troubleshooting' or listed in 'Future developments and plans'.
o Your list of bugs
NOTE! The size of the source-code is over 1 Megabyte so please keep your
temper when reporting bugs. It's easy for bugs to slip through
when the source get this long... You use Recall entirely at your
own risk!
See also How to contact the author
How to register as an user
Fill in and send it to me along with the shareware fee (make sure the
envelope is thick enough and that you can't see the money through it).
8< ---------------------------- CUT HERE ------------------------------ >8
Recall registration form
------------------------
I want to register as user of your excellent reminder-utility, Recall, and
have included in this envelope:
[ ] $15 US dollars
[ ] 100 Norwegian kroner
Name: _________________________________________________________________
Address: _________________________________________________________________
_________________________________________________________________
_________________________________________________________________
Country: _________________________________________________________________
e-mail: _________________________________________________________________
[ ] I want to subscribe to new releases of Recall through e-mail.
Version currently using: _______
8< ---------------------------- CUT HERE ------------------------------ >8
Your private Recall key along with the latest version of Recall will be
included in the registered archive.
The archive will be sent through e-mail when available. Please allow up
to three weeks for delivery through ordinary mail (one week's delivery
should be normal though).
NOTE If you want to pay in a another way or currency, and I'll see if we
can work it out.
See also How to contact the author
About the author
Contact me on this address:
Ketil Hunn
Nabbetorpveien 35B
N-1632 Gamle Fredrikstad
NORWAY
or by e-mail:
Ketil.Hunn@hiMolde.no
I hope you agree with me, that this program is the BEST reminder-utility
available for the Amiga. If not, tell my why so I can improve it.
Enjoy!
Ketil Hunn
Molde, May 1995
Index
A
About Recall and Credits
About the author
Adding text to an event
Attributes window
C
Cancel all changes and quit
Centring requesters
Confirming events
Copyrights & distribution
Creating a new date
Creating an event
D
Date window
Describing each field
Describing input events
Describing the displayer module
Describing the Edit menu
Describing the export modules
Describing the graphic user interface
Describing the GUI menu
Describing the import modules
Describing the operator modules
Describing the Project menu
Describing the Search menu
Describing the Settingsmenu
Describing the View menu
Description
Developer info
Disclaimer
Distributability
Documentation for Recall
F
Flashing the screen
Future developments and plans
G
Grouping events
H
History
How to handle the CPU workload
How to register as an user
How to report bugs
I
Inserting fields
Installing
K
Known bugs
L
List of events
M
Main window
Making a folder
Modules
Multitasking launched binaries
O
Orientating yourself in the project
P
Postponing events
R
Recursive folders
Renaming events
Running the programs
S
Saving the project and quitting
Selecting a command from a filerequester
Selecting a directory
Selecting a screen
Selecting how often the event will be displayed
Selecting the type of event
Setting the day
Setting the month
Setting the period for a date or time
Setting the priority of an executed program
Setting the repeat value for a date or time
Setting the stack of an executable
Setting the time of an event
Setting the timeout period for alerts
Setting the weekdays
Setting the year
Some examples on how to configure your events
T
Testing a project
Text window
Troubleshooting, Tips & Tricks
Tuning the date and time
U
Using cut
Using on-line help
Using paste
Using Recall Preferences